package com.mt.roll.wms.params;

import com.baomidou.mybatisplus.annotation.TableField;
import com.mt.roll.core.base.BaseParam;
import com.mt.roll.core.validator.groups.UpdateGroup;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

/**
 * @auther why
 * @date 2021/9/26 14:43
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value = "当前库存存储箱信息参数对象", description = "用于新增和更新当前库存存储箱信息")
public class StorageBoxCircInfoParam extends BaseParam {

    /**
     * 主键，自增
     */
    @ApiModelProperty(value = "主键，更新时需要填写", example = "1")
    @NotNull(message = "物料ID不能为空", groups = {UpdateGroup.class})
    private Long id;

    /**
     * 库位名
     */
    @ApiModelProperty(value = "库位名",required = true, example = "name")
    private String locationName;

    /**
     * 库位id
     */
    @ApiModelProperty(value = "库位id",required = true, example = "1")
    @NotNull(message = "库位ID不能为空")
    private Long currLocationId;

    /**
     * 存储箱号
     */
    @ApiModelProperty(value = "存储箱号",required = true, example = "20211131221105")
    @NotBlank(message = "存储箱号不能为空")
    private String code;

    /**
     * 存储箱id
     */
    @ApiModelProperty(value = "存储箱id",required = true, example = "1")
    @NotNull(message = "存储箱ID不能为空")
    private Long storageBoxId;

    /**
     * 状态
     */
    @ApiModelProperty(value = "状态", example = "0")
    private Integer status;

    /**
     * 是否空箱
     */
    @ApiModelProperty(value = "是否空箱(0空箱，1有货)", example = "0")
    private Integer isEmpty;

    /**
     * 基板唯一标签
     */
    @ApiModelProperty(value = "基板唯一标签自动生成的", example = "")
    private Long locationStorageSubId;

    /**
     * 当前库位-存储箱 对应的当前工序
     */
    @ApiModelProperty(value = "当前库位-存储箱 对应的当前工序", example = "")
    private String inProcessCode;

}
